﻿using System;
using System.ComponentModel;
using System.Xml.Serialization;

namespace Alimentador.Foods
{
    /// <summary>
    /// Default values for formula calculations
    /// </summary>
    [Serializable]
    public class DefaultValues
    {
        /// <summary>
        /// Star ratings with corresponding description
        /// </summary>
        public enum PatStarRatingValues
        {
            [Description("")]
            ActivityNone = 0,
            [Description("Sedentária")]
            ActivitySedentary,
            [Description("Levemente Ativo")]
            ActivityLight,
            [Description("Moderadamente Ativo")]
            ActivityModerate,
            [Description("Altamente Ativo")]
            ActivityHigh,
            [Description("Extremamente Ativo")]
            ActivityExtra
        }

        /// <summary>
        /// Pessoa Cintura
        /// </summary>
        public enum PCValues
        {
            /// <summary>
            /// 0
            /// </summary>
            [Description("Por favor, preencha a cintura")]
            None = 0,
            /// <summary>
            /// 94
            /// </summary>
            [Description("Normal")]
            MaleNormal = 94,
            /// <summary>
            /// 101
            /// </summary>
            [Description("Aumento de Risco Compl. metabólicas")]
            MaleRisk = 101,
            /// <summary>
            /// 102
            /// </summary>
            [Description("Risco muito aumentado Compl. metabólicas")]
            MaleHighRisk = 102,
            /// <summary>
            /// 80
            /// </summary>
            [Description("Normal")]
            FemaleNormal = 80,
            /// <summary>
            /// 87
            /// </summary>
            [Description("Aumento de Risco Compl. metabólicas")]
            FemaleRisk = 87,
            /// <summary>
            /// 88
            /// </summary>
            [Description("Risco muito aumentado Compl. metabólicas")]
            FemaleHighRisk = 88
        }

        public enum IMCValues
        {
            [Description("Subnutrido")]
            SUBNUTRIDO = 1850,
            [Description("Peso Ideal")]
            PESO_IDEAL = 2490,
            [Description("Levemente acima do peso")]
            LEVEMENTE_ACIMA_DO_PESO = 2990,
            [Description("Primeiro grau de obesidade")]
            PRIMEIRO_GRAU_DE_OBESIDADE = 3490,
            [Description("Segundo grau de obesidade")]
            SEGUNDO_GRAU_DE_OBESIDADE = 3990,
            [Description("Obesidade mórbida")]
            OBESIDADE_MORBIDA
        }

        public DefaultValues()
        {
        }

        /// <summary>
        /// 18
        /// </summary>
        [XmlElement("FOOD_MINIMUM_AGE")]
        public int FOOD_MINIMUM_AGE = 18;
        /// <summary>
        /// 50
        /// </summary>
        [XmlElement("FOOD_MEDIUM_AGE")]
        public int FOOD_MEDIUM_AGE = 50;
        /// <summary>
        /// 70
        /// </summary>
        [XmlElement("FOOD_MAX_AGE")]
        public int FOOD_MAX_AGE = 70;

        /// <summary>
        /// 200.0
        /// </summary>
        [XmlElement("MAXIMUM_WAIST")]
        public double MAXIMUM_WAIST = 200.0;
        /// <summary>
        /// 50.0
        /// </summary>
        [XmlElement("FEMALE_MINIMUM_WAIST")]
        public double FEMALE_MINIMUM_WAIST = 50.0;
        /// <summary>
        /// 60.0
        /// </summary>
        [XmlElement("MALE_MINIMUM_WAIST")]
        public double MALE_MINIMUM_WAIST = 60.0;
        /// <summary>
        /// 20.0
        /// </summary>
        [XmlElement("MINIMUM_HEIGHT")]
        public double MINIMUM_HEIGHT = 20.0;
        /// <summary>
        /// 10.0
        /// </summary>
        [XmlElement("MINIMUM_WEIGTH")]
        public double MINIMUM_WEIGTH = 10.0;
        /// <summary>
        /// 5.0033
        /// </summary>
        [XmlElement("MALE_HEIGHT_FACTOR")]
        public double MALE_HEIGHT_FACTOR = 5.0033;
        /// <summary>
        /// 66.437
        /// </summary>
        [XmlElement("MALE_FACTOR")]
        public double MALE_FACTOR = 66.437;
        /// <summary>
        /// 13.7516
        /// </summary>
        [XmlElement("MALE_WEIGHT_FACTOR")]
        public double MALE_WEIGHT_FACTOR = 13.7516;
        /// <summary>
        /// 6.755
        /// </summary>
        [XmlElement("MALE_AGE_FACTOR")]
        public double MALE_AGE_FACTOR = 6.755;
        /// <summary>
        /// 1.8496
        /// </summary>
        [XmlElement("FEMALE_HEIGHT_FACTOR")]
        public double FEMALE_HEIGHT_FACTOR = 1.8496;
        /// <summary>
        /// 655.0955
        /// </summary>
        [XmlElement("FEMALE_FACTOR")]
        public double FEMALE_FACTOR = 655.0955;
        /// <summary>
        /// 9.5634
        /// </summary>
        [XmlElement("FEMALE_WEIGHT_FACTOR")]
        public double FEMALE_WEIGHT_FACTOR = 9.5634;
        /// <summary>
        /// 4.6756
        /// </summary>
        [XmlElement("FEMALE_AGE_FACTOR")]
        public double FEMALE_AGE_FACTOR = 4.6756;
        /// <summary>
        /// 250
        /// </summary>
        [XmlElement("FEMALE_PREGNANT_FACTOR")]
        public double FEMALE_PREGNANT_FACTOR = 250;
        /// <summary>
        /// 250
        /// </summary>
        [XmlElement("FEMALE_FEEDING_FACTOR")]
        public double FEMALE_FEEDING_FACTOR = 250;
        /// <summary>
        /// 0.15
        /// </summary>
        [XmlElement("PROTEIN_FACTOR")]
        public double PROTEIN_FACTOR = 0.15;
        /// <summary>
        /// 4
        /// </summary>
        [XmlElement("PROTEIN_RATIO")]
        public double PROTEIN_RATIO = 4;
        /// <summary>
        /// 0.25
        /// </summary>
        [XmlElement("LIPIDS_FACTOR")]
        public double LIPIDS_FACTOR = 0.25;
        /// <summary>
        /// 9
        /// </summary>
        [XmlElement("LIPIDS_RATIO")]
        public double LIPIDS_RATIO = 9;
        /// <summary>
        /// 0.6
        /// </summary>
        [XmlElement("CARBON_HIDRATS_FACTOR")]
        public double CARBON_HIDRATS_FACTOR = 0.6;
        /// <summary>
        /// 4
        /// </summary>
        [XmlElement("CARBON_HIDRATS_RATIO")]
        public double CARBON_HIDRATS_RATIO = 4;
        /// <summary>
        /// 1500
        /// </summary>
        [XmlElement("WATER_FACTOR")]
        public double WATER_FACTOR = 1500;
        /// <summary>
        /// 30
        /// </summary>
        [XmlElement("FIBER_FACTOR")]
        public double FIBER_FACTOR = 30;
        /// <summary>
        /// 300
        /// </summary>
        [XmlElement("COLESTEROL_FACTOR")]
        public double COLESTEROL_FACTOR = 300;
        /// <summary>
        /// 110
        /// </summary>
        [XmlElement("MONO_DISSACARIDOS_MALE_FACTOR")]
        public int MONO_DISSACARIDOS_MALE_FACTOR = 110;
        /// <summary>
        /// 90
        /// </summary>
        [XmlElement("MONO_DISSACARIDOS_FEMALE_FACTOR")]
        public int MONO_DISSACARIDOS_FEMALE_FACTOR = 90;
        /// <summary>
        /// 30
        /// </summary>
        [XmlElement("SATURATED_FAT_SATURATED_ACID_MALE_FACTOR")]
        public int SATURATED_FAT_SATURATED_ACID_MALE_FACTOR = 30;
        /// <summary>
        /// 20
        /// </summary>
        [XmlElement("SATURATED_FAT_ACID_FEMALE_FACTOR")]
        public int SATURATED_FAT_ACID_FEMALE_FACTOR = 20;
        /// <summary>
        /// 29
        /// </summary>
        [XmlElement("MONO_INSATURATED_FAT_ACID_MALE_FACTOR")]
        public int MONO_INSATURATED_FAT_ACID_MALE_FACTOR = 29;
        /// <summary>
        /// 34
        /// </summary>
        [XmlElement("MONO_INSATURATED_FAT_ACID_FEMALE_FACTOR")]
        public int MONO_INSATURATED_FAT_ACID_FEMALE_FACTOR = 34;
        /// <summary>
        /// 21
        /// </summary>
        [XmlElement("POLI_INSATURATED_FAT_ACID_MALE_FACTOR")]
        public int POLI_INSATURATED_FAT_ACID_MALE_FACTOR = 21;
        /// <summary>
        /// 16
        /// </summary>
        [XmlElement("POLI_INSATURATED_FAT_ACID_FEMALE_FACTOR")]
        public int POLI_INSATURATED_FAT_ACID_FEMALE_FACTOR = 16;
        /// <summary>
        /// 1000
        /// </summary>
        [XmlElement("CALCIUM_MINIMUM_FACTOR")]
        public int CALCIUM_MINIMUM_FACTOR = 1000;
        /// <summary>
        /// 1200
        /// </summary>
        [XmlElement("CALCIUM_MEDIUM_FACTOR")]
        public int CALCIUM_MEDIUM_FACTOR = 1200;
        /// <summary>
        /// 27
        /// </summary>
        [XmlElement("IRON_FEEDING_FACTOR")]
        public int IRON_FEEDING_FACTOR = 27;
        /// <summary>
        /// 9
        /// </summary>
        [XmlElement("IRON_PREGNANT_FACTOR")]
        public int IRON_PREGNANT_FACTOR = 9;
        /// <summary>
        /// 18
        /// </summary>
        [XmlElement("IRON_MALE_MAX_FACTOR")]
        public int IRON_MALE_MAX_FACTOR = 18;
        /// <summary>
        /// 8
        /// </summary>
        [XmlElement("IRON_MALE_MINIMUM_FACTOR")]
        public int IRON_MALE_MINIMUM_FACTOR = 8;
        /// <summary>
        /// 1.2
        /// </summary>
        [XmlElement("SEDENTARY_VALUE")]
        public double SEDENTARY_VALUE = 1.2;
        /// <summary>
        /// 1.4
        /// </summary>
        [XmlElement("LIGHTLY_ACTIVE_VALUE")]
        public double LIGHTLY_ACTIVE_VALUE = 1.4;
        /// <summary>
        /// 1.7
        /// </summary>
        [XmlElement("MODERATE_ACTIVE_VALUE")]
        public double MODERATE_ACTIVE_VALUE = 1.7;
        /// <summary>
        /// 1.8
        /// </summary>
        [XmlElement("HIGHLY_ACTIVE_VALUE")]
        public double HIGHLY_ACTIVE_VALUE = 1.8;
        /// <summary>
        /// 2.0
        /// </summary>
        [XmlElement("EXTREMELY_ACTIVE_VALUE")]
        public double EXTREMELY_ACTIVE_VALUE = 2.0;
    }
}
